home *** CD-ROM | disk | FTP | other *** search
/ Acorn Risc Technologies StrongARM CD-ROM / Acorn Risc Technologies StrongARM CD-ROM.iso / software / apdl / _giforder / giforder (.txt) < prev    next >
Encoding:
RISC OS BBC BASIC V Source  |  1996-07-23  |  19.0 KB  |  743 lines

  1.  --> GIF_Order
  2.  This program and all documentation 
  3.  David Holden 1994
  4. A_%=207:
  5. 262343,D_%,E_%
  6. G_%:A%=0:B%=E_%:G%=G_%:H%=H_%:
  7. J_%:A%=3:B%=E_%:G%=J_%:H%=K_%:
  8. L_%:A%=4:B%=E_%:G%=L_%:H%=M_%:
  9. 262341,,E_%
  10. 262342,,E_%
  11. 8:P_%=E_%!4:Q_%=E_%!24:
  12. 262364,Q_%:
  13. &18F:
  14. !E_%=S_%
  15. 4:P_%=10
  16. 14:P_%=10
  17. :P_%-=1
  18. T_(S_%,P_%)
  19. &18E:
  20. !E_%=S_%
  21. P_%=10
  22. P_%=4
  23. P_%+=1
  24. T_(S_%,P_%)
  25. &1AF:
  26. !E_%=S_%
  27. T_(S_%,4)
  28. &1AE:
  29. !E_%=S_%
  30. T_(S_%,10)
  31. 262342,,E_%
  32. 17,18:
  33. E_%!16
  34. 2:W_%=
  35. X_%=&fff
  36. Z_(&336,a_%,b_%)
  37. 262351,,E_%+&C0:c_%=E_%!&C8:d_%=E_%:
  38. e_%=f_%
  39. E_%!4=-1
  40. g_(G_%)
  41. 1:!E_%=h_%:
  42. 262342,,E_%:
  43. g_(S_%):
  44. T_(S_%,4)
  45. 2:!(f_%+28+(2*24))=!(f_%+28+(2*24))
  46. g_(k_%):
  47. T_(k_%,0)
  48. 1:!E_%=h_%:
  49. 262342,,E_%:
  50. g_(S_%):
  51. T_(S_%,4)
  52. l_%=0 I%=
  53. m_(1,0):
  54. 5:I%=M_%:J%=M_%:A%=p_%+1:
  55. ?I%<>&FF:
  56. ?I%>128 I%+=18:p_%-=1
  57. 18:J%?K%=I%?K%:
  58. :I%+=18:J%+=18
  59. 262353,L_%,0,-A%*32,416,0
  60. c_%=1
  61. 262356,,e_%,r_%,s_%
  62. 262351,,E_%+&C0:c_%=E_%!&C8:d_%=E_%!&C4:r_%=E_%!&C0:t_%=E_%!12:P_%=E_%!16:
  63. P_%=u_%
  64. 2:r_%-=140:s_%=300:e_%=f_%:
  65. 262356,,e_%,r_%,s_%
  66. g_(v_%):
  67. g_(J_%)
  68. m_(1,1)
  69. g_(L_%)
  70. 2:r_%-=80:s_%=d_%+40:e_%=w_%:
  71. 262356,,e_%,r_%,s_%
  72. P_%=x_%
  73. P_%=6:
  74. y_(v_%,P_%):
  75. E_%!8=4
  76. P_%=0
  77. X_%=&FFF:
  78. `_(__%,0)
  79. E_%!8=4
  80. P_%=0
  81. X_%=36:
  82. `_(A`%,0)
  83. c_%<>4
  84. 11:!E_%=S_%:
  85. 262342,,E_%
  86. c_%<>4
  87. i)E_%!200=h_%:
  88. 262342,,E_%+200:
  89. P_%=8
  90. Z_(&fff,a_%,B`%)
  91. g_(k_%):
  92. T_(k_%,0)
  93. 2:r_%-=80:s_%=d_%+40:e_%=w_%:
  94. 262356,,e_%,r_%,s_%
  95. 4:!E_%=J_%:
  96. 262348,,E_%:G%=(
  97. (E_%!16)-d_%-E_%!24)
  98. s#A%=2:H%=K_%:C`%=
  99. C`%<0
  100. J%=M_%+(p_%*18):D`%+=1:p_%+=1:
  101. 16:J%?I%=C`%?I%:
  102. :J%?17=13:J%?18=&FF:l_%+=
  103. E`(J%):
  104. z_:!E_%=0:E_%!4=-(p_%+10)*32:E_%!8=300:E_%!12=0:
  105. 262359,L_%,E_%:
  106. 262353,L_%,0,-(p_%+1)*32,300,0
  107. c_%=4
  108. ~a!E_%=L_%:
  109. 262348,,E_%:I%=(
  110. (E_%!16)-d_%-E_%!24)
  111. 32:C`%=M_%+(I%*18):I%=
  112. E`(C`%+13):
  113. ?C`%<128
  114.  ?C`%=?C`%
  115. &80:l_%-=I%:D`%-=1
  116. :?C`%=?C`%
  117. &7F:l_%+=I%:D`%+=1
  118. 262353,L_%,0,-(p_%+1)*32,300,0
  119. c_%=2 r_%-=80:s_%=d_%+40:e_%=w_%:
  120. 262356,,e_%,r_%,s_%
  121. P_%=3
  122. q_(G`%):
  123. p_%<2
  124. aL%=p_%+1:A%=7:H%=M_%:R%=
  125. (I_%):p_%-=R%:
  126. H`(1,
  127. (R%)+" duplicate items deleted.")
  128. 262353,L_%,0,-L%*32,416,0:
  129. F`:!E_%=k_%:E_%!4=0:
  130. 262350,,E_%:
  131. $(E_%!28)="" I%=
  132. m_(1,2):
  133. -B%=E_%:G%=J_%:H%=K_%:
  134. I`(k_%,1)A%=5
  135. I_%>0
  136. I!E_%=J_%:
  137. 262347,,E_%:E_%!20=0:E_%!24=I_%!12:E_%!28=-1:
  138. 262341,,E_%
  139. E`(p%):
  140. ?p%<>32:p%+=1:
  141. ?p%=32:p%+=1:
  142. n_:l_%=0:D`%=0:p_%=0:I%=M_%:
  143. ?I%<>&FF:
  144. ?I%<128 D`%+=1:l_%+=
  145. E`(I%+13)
  146. I%+=18:p_%+=1:
  147. C`%,J`%,K`%:
  148. **ptr%=page_len%:WHILE?ptr%=32:ptr%+=1:ENDWHILE
  149. AK`%=5000:
  150. plen%=VAL($ptr%)-bott_space%:IF plen%<15 plen%=5000
  151. %C`%=a_%:J`%=0:
  152. C`%<B`%:
  153. ?C`%=10
  154. M`:J`%+=1:
  155. J`%>K`%
  156. 93,12:J`%=0
  157. 93,?C`%
  158. :C`%+=1:
  159. 93,12:!N`%=S_%:N`%!4=14:
  160. 262350,,N`%:
  161. $(N`%!28)>"" I%=
  162. m_(1,10)
  163. O`:=""
  164. a$:a$="Info: v"+
  165. (A_%/100)+"/"+
  166. ((Q`%)
  167. 100)+
  168. R`$>"" a$+=R`$
  169. ((Q`%)
  170. 100):
  171. 131153
  172. S%,P%:a$+="/OS-"+
  173. ((S`%
  174. 10)/10):a$+="/"+
  175. (((S%
  176. 1024)*P%)
  177. 1024)+"Mb":
  178. T`%=1 a$+="/800K"
  179. a$+="/1.6Mb"
  180. a$+="/SCSI":
  181. V`%>0 a$+="-"+
  182. (V`%)
  183. a$+="/IDEFS":
  184. X`%>0 a$+="-"+
  185. (X`%)
  186. Y`%>0 a$+="/ADFS-"+
  187. (Y`%)
  188. p%,e%,a$,Z`%:!N`%=S_%:N`%!4=14:
  189. 262350,,N`%:
  190. $(N`%!28)>""
  191. ?!N`%=S_%:N`%!4=15:
  192. 262350,,N`%:
  193. $(N`%!28)="" I%=
  194. m_(1,9):
  195. :p%=a_%:e%=a_%+a`%:
  196. I`(v_%,x_%)=
  197. Z`%=b`%
  198. Z`%=c`%
  199. I`(v_%,6)=
  200. Z`%=d`%
  201. l_%<Z`%
  202. Q`%=Z`%
  203. Q`%=l_%
  204. I%=35-(
  205. ($e`%)
  206. 2):$p%=
  207. I%," ")+$e`%:p%=
  208. f`(p%):$p%=
  209. I%," ")+
  210. ($e`%),"-"):p%=
  211. f`(p%):$p%=
  212. P`:p%=
  213. f`(p%):?p%=13:p%+=1:$p%="From:"+
  214. 50," "):p%+=51:!p%=0:
  215. 7,14,p%:
  216. :p%+=1:
  217. ?p%=46:?p%=13:p%+=1:
  218. T!N`%=S_%:N`%!4=I%:
  219. 262350,,N`%:
  220. $(N`%!28)>""
  221. $p%="       "+$(N`%!28):p%=
  222. f`(p%)
  223. :!p%=&0D0D0D:p%+=3:P%=0:$p%="     -----  GIF files  -----":
  224. I`(v_%,x_%)=
  225. $p%+=" (1.44 Mb discs)"
  226. f`(p%):I%=M_%:
  227. ?I%<>&FF:
  228. ?I%>127
  229. ?I%<255:I%+=18:
  230. ?I%<128 $p%=$I%:I%+=18
  231. ?I%>127
  232. ?I%<255:I%+=18:
  233. ?I%<128 $p%=$p%+"        "+$I%:I%+=18
  234. ?I%>127
  235. ?I%<255:I%+=18:
  236. ?I%<128 $p%=$p%+"        "+$I%:I%+=18
  237. f`(p%):
  238. :!p%=&0D0D0D0D:
  239. D`%<100
  240. p%+=3
  241. p%+=1
  242. 46," ")+"---------":p%=
  243. f`(p%):$p%=
  244. 20," ")+"Total cost             "+
  245. g`(Q`%,10):p%=
  246. f`(p%):$p%=
  247. 46," ")+"---------":p%=
  248. f`(p%):$p%=
  249. 20," ")+"Items ordered         "+
  250. h`(D`%,10):p%=
  251. f`(p%):!p%=&0D0D0D0D
  252. 6!N`%=S_%:N`%!4=14:
  253. 262350,,N`%:a$=$N`%!28:
  254. a$>""
  255. $p%="Please debit Credit/Switch card : "+a$:!N`%=S_%:N`%!4=15:
  256. 262350,,N`%:$p%+=(" : Expires "+$(N`%!28)):p%=
  257. f`(p%):!p%=&0D0D0D0D:
  258. D`%<80
  259. p%+=2
  260. p%+=1
  261. D`%<80
  262. p%+=3
  263. p%+=1
  264. 9:!N`%=S_%:N`%!4=I%:
  265. 262350,,N`%:
  266. $(N`%!28)>"" $p%="    "+$N`%!28:p%=
  267. f`(p%)
  268. :?p%=13:p%+=1:B`%=p%:
  269. I%=a_%
  270. ?I%=13
  271. ?I%=10
  272. i`(w%,i%):E_%!200=w%:E_%!204=i%:
  273. 262350,,E_%+200:i%=E_%!228:
  274. ?i%>31:
  275. ?i%=160 ?i%=32
  276. $i%+=1:
  277. :?i%=13:=$(E_%!228)+"   "
  278. h`(n%,l%):
  279. a$:a$=
  280. l%," ")+
  281. (n%):=
  282. a$,l%)
  283. g`(c%,l%):
  284. t%,f%:$(N`%+100)=
  285. 50," "):$(N`%+130)=
  286. (c%):f%=N`%+148:t%=N`%+100+l%:
  287. :f%-=1:
  288. ?f%=13:?t%=?f%:t%?-1=f%?-1:t%?-2=f%?-2:t%?-3=46:t%-=4:f%-=3:
  289. :?t%=?f%:t%-=1:f%-=1:
  290. ?f%=32:=$(N`%+100)
  291. 93,13:
  292. 93,10
  293. f`(p%):
  294. ?p%>31:p%+=1:
  295. :p%+=1:=p%
  296. Z`%,p%,c%:Z`%=0:
  297. I`(v_%,x_%)=
  298. Z`%=b`%
  299. Z`%=c`%
  300. I`(v_%,6)=
  301. Z`%=d`%
  302. l_%<Z`%
  303. c%=Z`%
  304. c%=l_%
  305. >Ac$=j`$+
  306. 100)+".":p%=c%
  307. p%<10
  308. c$+="0"+
  309. E_%!100=v_%:E_%!104=k`%:
  310. 262350,,E_%+100:$(E_%!128)=c$:E_%!108=0:E_%!112=0:
  311. 262349,,E_%+100:E_%!100=v_%:E_%!104=4:
  312. 262350,,E_%+100:$(E_%!128)=
  313. (D`%)+" ":E_%!108=0:E_%!112=0:
  314. 262349,,E_%+100:
  315. R_:P_%=E_%!4:
  316. 4,5,6,7,8,9,14:
  317. T_(S_%,P_%+1)
  318. 10,15:
  319. T_(S_%,4)
  320. Y_:E_%!200=S_%:
  321. 262342,,E_%+200:
  322. P_%=1
  323. l`(S_%,P_%+3,h_%,P_%):
  324. g_(h_%):
  325. l_%=0
  326. m_(1,0):
  327. m_(3,3)=2:
  328. l_%=0:D`%=0:p_%=0:!M_%=&FFFFFFFF:!E_%=0:E_%!4=-(p_%+10)*32:E_%!8=300:E_%!12=0:
  329. 262359,L_%,E_%:
  330. 262353,L_%,0,-(p_%+10)*32,300,0:
  331. m`(w%,i%,v%):E_%!100=w%:E_%!104=i%:
  332. 262350,,E_%+100:E_%!108=0:E_%!112=0:$(E_%!128)=
  333. (v%):
  334. 262349,,E_%+100:
  335. n`(w%,i%,s$):E_%!100=w%:E_%!104=i%:
  336. 262350,,E_%+100:E_%!108=0:E_%!112=0:$(E_%!128)=s$:
  337. 262349,,E_%+100:
  338. o`(w%,i%):E_%!100=w%:E_%!104=i%:
  339. 262350,,E_%+100:I%=(E_%!128):
  340. ?I%>31:I%+=1:
  341. :?I%=13:=$(E_%!128)
  342. p`(w%):E_%!&100=w%:
  343. 262344,,E_%+&100
  344. 262346,,E_%+&100
  345. l`(q`%,r`%,s`%,t`%):E_%!200=q`%:E_%!204=r`%:
  346. 262350,,E_%+200:E_%!240=s`%:E_%!244=t`%:
  347. 262350,,E_%+240:$(E_%!268)=$(E_%!228):
  348. `_(w%,i%):!E_%=w%:
  349. 262347,,E_%:X%=E_%!4-E_%!20:Y%=E_%!16-E_%!24:E_%!4=i%:
  350. 262350,,E_%:
  351. S`%<310
  352. !E_%=w%:E_%!4=5:E_%!8=E_%!8+X%:E_%!12=E_%!12+Y%:E_%!16=E_%!16+X%:E_%!20=E_%!20+Y%:E_%!24=0:E_%!28=0:E_%!32=&7FFFFFFF:E_%!36=&7FFFFFFF:
  353. 262352,,E_%
  354. :!E_%=E_%!8+X%:E_%!4=E_%!12+Y%:E_%!8=E_%!16+X%:E_%!12=E_%!20+Y%:
  355. 271360,%11000101,1,E_%!28,E_%
  356. S`%>310
  357. 271361
  358. l_%=0
  359. 1!N`%=S_%:N`%!4=4:
  360. 262350,,N`%:
  361. $(N`%!28)=""
  362. >!N`%=S_%:N`%!4=5:
  363. 262350,,N`%:
  364. $(N`%!28)="" I%=
  365. m_(1,0):
  366. &FFF:
  367. a_:L%=B`%-a_%:E_%!&80=__%:E_%!&84=3
  368. u`:E_%!&80=A`%:E_%!&84=3:L%=b_%-a_%
  369. 262350,,E_%+&80:I%=(E_%!&9C):
  370. $(I%),"."):I%+=1:
  371. :v`$=$(I%):
  372. 262351,,E_%:E_%!20=E_%!12:E_%!24=E_%!16:E_%!28=!E_%:E_%!32=E_%!4:E_%!36=L%:E_%!40=X_%:E_%!16=1:$(E_%+44)=v`$:!E_%=(
  373. (v`$)+49)
  374. 3:E_%!12=0
  375. 262375,17,E_%,E_%!20,E_%!24:
  376. Z_(w`%,s%,e%):
  377. LI%=E_%+44:
  378. ?I%>31:I%+=1:
  379. :?I%=13:
  380. 8,10,$(E_%+44),w`%,,s%,e%:
  381. w`%=&FFF
  382. >!N`%=S_%:N`%!4=14:
  383. 262350,,N`%:
  384. $(N`%!28)>"" I%=
  385. m_(1,11)
  386. p%:p%=a_%:!p%=x`%:
  387. I`(v_%,x_%)=
  388. c%=b`%
  389. c%=c`%
  390. l_%<c%
  391. p%!4=c%
  392. p%!4=l_%
  393. p%!8=
  394. I`(v_%,x_%):p%!12=
  395. I`(v_%,6):p%+=16:
  396. 10:E_%!200=S_%:E_%!204=I%:
  397. 262350,,E_%+200:$p%=$(E_%!228):p%=
  398. f`(p%):
  399. I%=14
  400. 15:E_%!200=S_%:E_%!204=I%:
  401. 262350,,E_%+200:$p%=$(E_%!228):p%=
  402. f`(p%):
  403. :p%=(p%+3)
  404. 3:J%=M_%
  405. ?J%<>&FF:
  406. ?J%<128:
  407. 29:p%?I%=J%?I%:
  408. :p%+=18
  409. J%+=18:
  410. :?p%=&FF:b_%=p%+1:
  411. T_(w%,i%):!E_%=w%:E_%!4=i%:
  412. 262350,,E_%:I%=E_%!28:
  413. ?I%>31:I%+=1:
  414. :?I%=13:
  415. 262354,w%,i%,,,-1,
  416. $(E_%!28):
  417. I`(w%,i%):E_%!300=w%:E_%!304=i%:
  418. 262350,,E_%+300:
  419. (E_%!324
  420. 1<<21):=
  421. y_(w%,i%):
  422. I`(w%,i%)=
  423. E_%!308=0
  424. E_%!308=1<<21
  425. %E_%!312=1<<21:
  426. 262349,,E_%+300:
  427. y`(z`%):
  428. 262380,_`%+z`%,-1
  429. e%<(_`%+z`%):=
  430. J`,Aa,Ba,Ca,m%:Aa=1:J`=2:Ca=4:Ba=&80:
  431. Da%&200:m%=Da%:w_%=
  432. Ea(m%,"APDL Order",184):m%=
  433. Fa("Search",0,0):m%=
  434. Fa("Address",0,0):m%=
  435. Fa("Print order",0,0):m%=
  436. Fa("Recalculate",0,0):m%=
  437. Fa("Clear all",0,0)
  438. Fa("Compact",0,0):m%=
  439. Fa("Sort list",0,0):m%=
  440. Fa("Save order",0,A`%):m%=
  441. Fa("Save text",Ba,__%):f_%=
  442. Ea(m%,"GIF Order",180):m%=
  443. Fa("Help text",0,0):m%=
  444. Fa("Address",0,0)
  445. Fa("Linefeeds",Aa,0)
  446. Fa("Linefeeds",0,0)
  447. Fa("Info",J`,Ga%):m%=
  448. Fa("Quit",Ba,0):
  449. Ea (a%,Ha$,Ia%):$a%=Ha$:a%!12=&70207:a%!16=Ia%:a%!20=40:a%!24=0:m%=a%+28:=a%
  450. Fa (Ja$,Ka%,La%):!m%=Ka%:m%!4=La%:m%!8=&7000001:$(m%+12)=Ja$:=m%+24
  451. g_(w%):!E_%=w%:
  452. 262347,,E_%:E_%!28=-1:
  453. 262341,,E_%:
  454. Ma (Na$,Oa%):!E_%=Oa%:E_%!4=-8:E_%!8=0:E_%!12=56:E_%!16=96:E_%!20=&2002:$(E_%+24)="!"+Na$:
  455. 262338,,E_%
  456. I%:=I%
  457. 6,128,252
  458. ,L%,H%:F%=L%+(H%<<8):
  459. 93,0:
  460. 6,128,252
  461. ,L%,H%:
  462. L%+(H%<<8)>=F%:=
  463. m_(3,4)=2:=
  464. C_ (Pa$,Qa%):*FX229,1
  465. 263874:D_%=&C31:!E_%=
  466. :$(E_%+4)="Error "+
  467. )+": "+Pa$++
  468. 262367,E_%,1,Ra%:
  469. "Closearchive gifres"
  470. 263874:
  471. 262365,Ta%,&4B534154:
  472. m_(Ua%,Va%):
  473. p%:p%=Wa%:
  474. Va%>0:
  475. :p%+=1:
  476. ?p%<32:p%+=1:Va%-=1:
  477. H`(Ua%,$p%)
  478. H`(Ua%,a$):E_%!&180=0:$(E_%+&184)=a$+
  479. 262367,E_%+&180,16
  480. Ua%,Ra%
  481. ,Ua%:=Ua%
  482. :I%+=1:
  483. ?I%=34
  484. ?I%<32:
  485. ?I%<32:=""
  486. :I%+=1:
  487. ?I%<>32:
  488. ?I%<32:=""
  489. +%J%=I%:
  490. :J%+=1:
  491. ?J%<32:?J%=13:=$I%
  492. Ya (Za%):
  493. aa% Za%:E%=aa%+Za%:
  494. S`%>200
  495. t$="arcfs#gif_res:$.Templ_3"
  496. t$="arcfs#gif_res:$.Templ_2"
  497. 262361,,t$:
  498. 262363,,a_%,aa%,E%,-1,"info",0
  499. ,,R%:
  500. 262337,,a_%
  501. 262363,,a_%,R%,E%,-1,"savetxt",0
  502. ,,R%:
  503. 262337,,a_%
  504. 262363,,a_%,R%,E%,-1,"saveord",0
  505. ,,R%:
  506. 262337,,a_%
  507. 262363,,a_%,R%,E%,-1,"main",0
  508. 262337,,a_%
  509. 262363,,a_%,R%,E%,-1,"addr",0
  510. ,,R%:
  511. 262337,,a_%
  512. 262363,,a_%,R%,E%,-1,"check",0
  513. ,,R%:
  514. 262337,,a_%
  515. 262363,,a_%,R%,E%,-1,"help",0
  516. ,,R%:
  517. 262337,,a_%
  518. 262363,,a_%,R%,E%,-1,"browse",0
  519. 262337,,a_%
  520. 262363,,a_%,R%,E%,-1,"list",0
  521. ,,R%:
  522. 262337,,a_%
  523. 262363,,a_%,R%,E%,-1,"find",0
  524. ,,R%:
  525. 262337,,a_%
  526. 262362:!E_%=G_%:
  527. 262348,,E_%:!E_%=0:E_%!4=-(32*ba%):E_%!8=1208:E_%!12=0:
  528. 262359,G_%,E_%
  529. !E_%=Ga%:E_%!4=0:
  530. 262350,,E_%:$(E_%!28)=A_$:!E_%=Ga%:E_%!4=1:
  531. 262350,,E_%:$(E_%!28)=ca$:!E_%=Ga%:E_%!4=2:
  532. 262350,,E_%:$(E_%!28)=$da%:
  533. :T`%=1:
  534. 393800,0
  535. d%,n%:Y`%=0:X`%=0:V`%=0:W`%=
  536. :U`%=
  537. 131113,33,I%,ga%,255:J%=ga%:
  538. ?J%>32:J%+=1:
  539. :?J%=13:
  540. J%>ga%
  541. $ga%,2)<>"FS" $ga%+="FS"
  542. 131129,,$ga%+"_Drives"
  543. n%;F%:
  544. ,,d%:
  545. $ga%,3)="IDE" W`%=
  546. :X`%=d%
  547. $ga%,4)="SCSI" U`%=
  548. :V`%=d%
  549. $ga%,4)="ADFS" Y`%=d%
  550. 8,17,"arcfs#gif_res:$.messages"
  551. F%,,,,ia%:
  552. 1)<>1 I%=
  553. H`(1,"Messages file not found - unable to continue"):
  554. Wa% ia%+4:ja%=Wa%+ia%:
  555. 8,16,"arcfs#gif_res:$.messages",Wa%,0:?ja%=13:ka%=0:I%=Wa%:J%=I%:
  556. I%<ja%:
  557. :I%+=1:
  558. ?I%=32:
  559. :I%+=1:
  560. ?I%<>32:
  561. :?J%=?I%:I%+=1:J%+=1:
  562. ?I%<32:?J%=13:I%+=1:J%+=1:ka%+=1:
  563. 262336,200,&4B534154,"GIF Order"
  564. S`%,Ta%:
  565. (-50)
  566. S`%=200
  567. (-26)
  568. E_%&240,ga%&100,Ra% 16,a_% a`%,N`% 160,ma%&1000,M_%&4000:$Ra%="GIF Order":!M_%=&FFFFFFFF:_`%=
  569. -&8000:K_%=
  570. :Sa%=
  571. $+" During initialisation",
  572. 35,"APDL_GIForder$Dir",E_%,256,0,3
  573. ,,I%:E_%?I%=13:na$=$E_%:B`%=a_%:?E_%=13:
  574. 131107,"GIForder$Distrib",E_%,256,0,3
  575. ,,I%:E_%?I%=13:R`$=$E_%:
  576. 263872:
  577. 5,"openarchive "+na$+".resources gif_res":Sa%=
  578. Ya(&480):
  579. su_%=
  580. Ma("giforder",-1):D_%=%110000110001:
  581. T`%>1 !E_%=v_%:E_%!4=3:E_%!8=1<<21:E_%!12=1<<21:
  582. 262349,,E_%
  583. ma$<>""
  584. ra%=0:
  585. S`%>200
  586. 12,10,na$+".^",ma%,1,ra%,&1000,"GIF*"
  587. ,,,N%,ra%:
  588. ma%!16=3
  589. @I%=ma%+20:
  590. ?I%>31:I%+=1:
  591. :?I%=13:
  592. sa(na$+".^."+$(ma%+20),
  593. ra%<0
  594. :C`%=ma%:
  595. 12,9,na$+".^",ma%,100,ra%,&1000,"gif*"
  596. ,,,N%:
  597. ra%<=N%
  598. :I%=C`%:
  599. :I%+=1:
  600. ?I%<32:?I%=13:
  601. 8,17,na$+".^."+$C`%
  602. ,,T%:T%=(T%>>8)
  603. &FFF:
  604. T%=&DDC
  605. T%=&3FB
  606. sa(na$+".^."+$C`%,
  607. :C`%+=1:
  608. C`%?-1<31:ra%+=1
  609. ra%<0
  610. m_(3,5):
  611. "closearchive gif_res":Sa%=
  612. 263873:
  613. 8,17,"arcfs#gif_res:$.setup"
  614. ,,,,ia%:
  615. ta% ia%+4:ja%=ta%+ia%:
  616. 8,16,"arcfs#gif_res:$.setup",ta%,0:ta%?(ia%+1)=13:
  617. I%=ta%
  618. ?I%=10? I%=13
  619. :C`%=ta%:O%=0:D%=0:
  620. C`%<ja%:
  621. $C`%,4)
  622. "ADDR":
  623. ua:e`%=C`%:O%=0
  624. "PURP":
  625. ua:da%=C`%:O%=0
  626. "CURR":
  627. ua:j`$=
  628. (?C`%):O%=0
  629. "INST":
  630. va:H_%=C`%:ba%=0:
  631. va:ba%+=1:
  632. ?C`%=&FF:O%=0
  633. "LABE":wa%=
  634. :O%=0
  635. "INVO":
  636. ua:d`%=
  637. "HDIN":
  638. ua:b`%=
  639. ($C`%):O%=0
  640. "DDIN":
  641. ua:c`%=
  642. ($C`%):O%=0
  643. sa(f$,Pa%):
  644. y`(0):
  645. $,Pa%):
  646. $a_%=f$:xa$=f$:I%=a_%:
  647. $I%,"."):I%+=1:
  648. :ya$=$(I%):
  649. 5,"openarchive "+xa$+" gifarc":
  650. 8,17,"arcfs#gifarc:$."+ya$
  651. ,,,,ia%:
  652. y`(ia%)=
  653. m_(1,6):
  654. 8,16,"arcfs#gifarc:$."+ya$,K_%,0
  655. ,,,,ia%:K_%?ia%=&FF:E%=K_%+ia%:I%=K_%:
  656. ?I%<>45
  657. I%<E%:I%=
  658. f`(I%):
  659. :a$="":
  660. 39:a$+=
  661. (J%?I%):
  662. 40,"-")
  663. I%>=E%:
  664. I%<E%
  665. A%=1:G%=I%:H%=K_%:L%=(
  666. I_%):!E_%=0:E_%!4=-(L%*32):E_%!8=1184:E_%!12=0:
  667. 262359,J_%,E_%:!E_%=J_%:
  668. 262342,,E_%:!E_%=J_%:
  669. 262348,,E_%:$(E_%!76)=ya$:E_%!20=0:E_%!24=0:E_%!28=-1:
  670. 262341,,E_%
  671. m_(1,7):
  672. "closearchive gifarc":j_%=
  673. g_(v_%):
  674. g_(L_%):
  675. p%,za%:
  676. 8,16,ma$,a_%,0:p%=a_%:za%=!p%:
  677. (za%<>x`%)
  678. (za%<>100)I%=
  679. m_(1,8):
  680. )D`%=0:l_%=0:p_%=0:
  681. p%!8=
  682. y_(v_%,x_%)
  683. p%!12=
  684. y_(v_%,6)
  685. Yp%+=16:
  686. 10:!E_%=S_%:E_%!4=I%:
  687. 262350,,E_%:$(E_%!28)=$p%:p%=
  688. f`(p%):
  689. za%<>100
  690. I%=14
  691. 15:!E_%=S_%:E_%!4=I%:
  692. 262350,,E_%:$(E_%!28)=$p%:p%=
  693. f`(p%):
  694. :p%=(p%+3)
  695. 3:J%=M_%:I%=-1:
  696. :I%+=1:J%?I%=p%?I%:
  697. p%?I%=&FF:
  698. I_%&800:
  699. 2:P%=I_%:[OPT _a:adr r8,`a:mov r0,r0,lsl#2:ldr pc,[r8,r0]:.Ab equd 0:equd 0
  700. G.`a equd Bb:equd Cb:equd Db:equd Eb:equd Fb:equd Gb:equd Hb:equd q_
  701. F.Ib equd 0:equd 0:equd 0:equd 0:equd 0:equd 0:equd 0:equd 0:equd 0
  702. .Jb:ldr r2,[r1,#28]:adr r3,Ib:.Kb ldrb r0,[r2],#1:cmp r0,#61:blt Lb:cmp r0,#122:andle r0,r0,#&DF:.Lb strb r0,[r3],#1:cmp r0,#31:bgt Kb:mov pc,r14
  703. .Hb:stmfd r13!,{r14}:bl Jb:str r6,[r1]:bl Mb:cmp r10,#0:blt Nb:.Ob str r10,Ab:ldrb r0,[r7]:cmp r0,#&FF:moveq r0,#0:ldmeqfd r13!,{pc}:add r6,r7,#4:.Pb mov r5,r6:adr r4,Ib:.Qb ldrb r0,[r5],#1:ldrb r2,[r4],#1:cmp r2,#31
  704. movlt r0,r7:ldmltfd r13!,{pc}:cmp r0,#61:blt Rb:cmp r0,#122:andle r0,r0,#&DF:.Rb cmp r2,#35:beq Qb:cmp r0,r2:beq Qb:ldrb r0,[r6,#1]!:cmp r0,#32:bge Pb:add r6,r6,#1:ldrb r0,[r6]:cmp r0,#32:beq Pb:.Nb ldrb r0,[r7],#1:cmp r0,#31
  705. C@bgt Nb:sub r10,r10,#32:ldrb r0,[r7]:cmp r0,#32:beq Nb:bal Ob
  706. .Gb:stmfd r13!,{r14}:bl Jb:str r6,[r1]:bl Mb:cmp r10,#0:blt Sb:.Tb str r10,Ab:ldrb r0,[r7]:cmp r0,#&FF:moveq r0,#0:ldmeqfd r13!,{pc}:add r5,r7,#4:.Ub adr r4,Ib:.Vb ldrb r0,[r5],#1:ldrb r2,[r4],#1:cmp r2,#31:movlt r0,r7
  707. ldmltfd r13!,{pc}:cmp r0,#61:blt Wb:cmp r0,#122:andle r0,r0,#&DF:.Wb cmp r2,#35:beq Vb:cmp r0,r2:beq Vb:cmp r0,#32:bne Ub:.Sb ldrb r0,[r7],#1:cmp r0,#31:bgt Sb:sub r10,r10,#32:bal Tb
  708. .Mb:swi "Wimp_GetWindowState":ldr r2,[r1,#24]:bic r10,r2,#%11111:sub r2,r2,#32:.Xb adds r2,r2,#32:movpl pc,r14:.Yb ldrb r0,[r7],#1:cmp r0,#31:bge Yb:bal Xb
  709. .Db:ldrb r0,[r7],#1:cmp r0,#32:bge Db:subs r6,r6,#1:bne Db:ldrb r0,[r7]:cmp r0,#45:mvneq r0,#0:moveq pc,r14:cmp r0,#32:cmpne r0,#&FF:movne r0,r7:movne pc,r14:sub r7,r7,#1:.Zb ldrb r0,[r7,#-1]!:cmp r0,#32:bge Zb
  710. Vldrb r0,[r7,#1]:cmp r0,#32:beq Zb:cmp r0,#45:mvneq r0,#0:addne r0,r7,#1:mov pc,r14
  711. .Cb:mov r10,r7:.ab ldrb r1,[r6],#1:strb r1,[r10],#1:cmp r1,#&FF:bne ab:mov r0,#1:.bb ldrb r1,[r7],#1:cmp r1,#&FF:moveq pc,r14:cmp r1,#32:bge bb:mov r1,#0:strb r1,[r7,#-1]:add r0,r0,#1:bal bb
  712. .q_:mov r6,#1:mov r0,#0
  713. 6.cb cmp r6,#0:moveq pc,r14:mov r6,#0:sub r4,r7,#18
  714. .db add r4,r4,#18:add r5,r4,#18:mov r1,#0:ldrb r3,[r5]:cmp r3,#&FF:beq cb:.eb ldrb r2,[r4,r1]:ldrb r3,[r5,r1]:cmp r2,r3:blt db:bgt fb:add r1,r1,#1:cmp r1,#18:blt eb
  715. pmov r5,r4:.gb ldrb r1,[r5,#18]:strb r1,[r5]:add r5,r5,#1:cmp r1,#&FF:bne gb:add r0,r0,#1:add r6,r6,#1:bal db
  716. .fb mov r1,#17:add r6,r6,#1:.hb ldrb r2,[r4,r1]:ldrb r3,[r5,r1]:strb r2,[r5,r1]:strb r3,[r4,r1]:subs r1,r1,#1:bpl hb:bal db
  717. .Fb:stmfd r13!,{r14}:str r6,[r1]:swi "Wimp_RedrawWindow":.ib bl jb:.kb ldr r4,[r1,#40]:ldr r3,[r1,#32]:sub r5,r4,r3:mov r5,r5,lsr#5:add r5,r5,#1:sub r9,r9,#8:bl lb:.mb ldrb r0,[r2]:tst r0,#%10000000:moveq r0,#7:movne r0,#2
  718. swi "Wimp_SetColour":.nb ldrb r0,[r2],#1:cmp r0,#&FF:beq ob:and r0,r0,#&7F:swi "OS_WriteC":.pb ldrb r0,[r2],#1:cmp r0,#31:swigt "OS_WriteC":bgt pb:subs r5,r5,#1:bmi ob:sub r9,r9,#32:bl lb:bal mb:.ob swi "Wimp_GetRectangle"
  719. bal ib
  720. .Eb:stmfd r13!,{r14}:str r6,[r1]:swi "Wimp_RedrawWindow":.qb bl jb:.rb ldr r4,[r1,#40]:ldr r3,[r1,#32]:sub r5,r4,r3:mov r5,r5,lsr#5:add r5,r5,#1:sub r9,r9,#8:bl lb:.sb ldrb r11,[r2]:cmp r11,#45:bne tb:mov r0,#11
  721. swi "Wimp_SetColour":add r2,r2,#1:.tb ldrb r0,[r2],#1:cmp r0,#&FF:beq ub:cmp r0,#31:swigt "OS_WriteC":bgt tb:cmp r11,#45:moveq r0,#7:swieq "Wimp_SetColour":subs r5,r5,#1:bmi ub:sub r9,r9,#32:bl lb:bal sb
  722. &.ub swi "Wimp_GetRectangle":bal qb
  723. .Bb:stmfd r13!,{r14}:str r6,[r1]:swi "Wimp_RedrawWindow":.vb bl jb:ldr r4,[r1,#40]:ldr r3,[r1,#32]:sub r5,r4,r3:mov r5,r5,lsr#5:add r5,r5,#1:sub r9,r9,#8:bl lb
  724. .wb ldrb r0,[r2],#1:cmp r0,#&FF:beq xb:cmp r0,#
  725. "{":cmpne r0,#
  726. "}":beq yb:cmp r0,#31:swigt "OS_WriteC":bgt wb:subs r5,r5,#1:bmi xb:sub r9,r9,#32:bl lb:bal wb:.xb swi "Wimp_GetRectangle":bal vb
  727. 3I.yb cmp r0,#
  728. "{":moveq r0,#11:movne r0,#7:swi "Wimp_SetColour":bal wb
  729. .jb:cmp r0,#0:ldmeqfd r13!,{pc}:ldr r0,[r1,#4]:ldr r2,[r1,#20]:sub r8,r0,r2:add r8,r8,#8:ldr r0,[r1,#16]:ldr r2,[r1,#24]:sub r9,r0,r2:ldr r3,[r1,#40]:sub r3,r9,r3:mov r3,r3,lsr#5:mov r2,r3,lsl#5:sub r9,r9,r2:mov r2,r7
  730. Jwsubs r3,r3,#1:movmi pc,r14:.zb ldrb r0,[r2],#1:cmp r0,#&FF:ldmeqfd r13!,{pc}:cmp r0,#31:bgt zb:subs r3,r3,#1:bpl zb
  731. .lb swi 256+25:swi 256+4:mov r0,r8:swi "OS_WriteC":mov r0,r0,lsr#8:swi "OS_WriteC":mov r0,r9:swi "OS_WriteC":mov r0,r0,lsr#8:swi "OS_WriteC":movs pc,r14:]:
  732. ?C`%>31:C`%+=1:
  733. :C`%+=1:
  734. ?C`%>32:C`%+=1:
  735. ?C`%<33:C`%+=1:
  736. la:j_%=
  737. :l_%=0:D`%=0:p_%=0:R`$="":x`%=200:A_$="APDL GIForder Ver "+
  738. (A_%/100):ca$="
  739.  David Holden 1994":a`%=&6000:W_%=
  740. :wa%=
  741. :_b%=5:c`%=150:b`%=180:d`%=500:k`%=5:i_%=
  742. :x_%=3:
  743.